File System
NOTE
리눅스/유닉스 파일시스템 계층 표준(FHS)의 개념과 최상위 디렉토리 구조, 각 디렉토리 역할, 실무 관점 요약 정리.
📌 개념
FHS(Filesystem Hierarchy Standard)란?
리눅스/유닉스 계열에서 파일과 디렉토리를 어떤 목적과 규칙으로 배치할지 정의한 표준이다.
- 시스템 레이아웃의 기준 제공
- 파일시스템 간 일관된 계층 구조 유지
- 배포판이 달라도 디렉토리 역할을 예측 가능하게 함
최상위 디렉토리
/(Root): 모든 디렉토리의 최상위, 시스템 전체의 시작점
주요 디렉토리
시스템 실행 및 부팅
- /bin: 기본 실행 명령어. 부팅·복구에 필수적인 프로그램
- /sbin: 시스템 관리용 필수 바이너리(주로 root용)
- /boot: 커널 이미지, 부트로더 설정 파일
장치 / 커널 / 가상 파일시스템
- /dev: 디바이스 파일(하드웨어를 파일처럼 접근)
- /proc: 프로세스 및 커널 정보를 파일로 제공(가상 파일시스템)
- /sys: 장치·드라이버·커널 기능 정보(커널과 사용자 공간 연결)
설정 파일
- /etc: 시스템 전반의 설정 파일
- /etc/opt: 추가 패키지 설정
- /etc/sgml: SGML 관련 설정
- /etc/X11: X Window 시스템 설정
- /etc/xml: XML 처리 관련 설정
사용자 영역
- /home: 일반 사용자 홈 디렉토리
- /root: root 사용자 전용 홈 디렉토리
라이브러리
- /lib:
/bin,/sbin실행 파일에 필요한 필수 라이브러리
마운트 포인트
- /media: CD/DVD, USB 등 이동식 미디어 마운트
- /mnt: 임시 파일시스템 마운트 지점
추가 소프트웨어
- /opt: add-on 애플리케이션 패키지(기본 시스템과 분리된 소프트웨어)
런타임 / 임시 파일
- /run: 부팅 이후 실행 중인 시스템의 런타임 정보
- /tmp: 임시 파일(재부팅 시 삭제될 수 있음)
서비스 데이터
- /srv: 시스템이 제공하는 서비스용 데이터(예: FTP 데이터, 리포지토리)
/usr 계열
- /usr: 읽기 전용 데이터(사용자 명령·라이브러리·문서). 시스템의 “보조 영역”
/var 계열 (가변 데이터)
- /var: 변경되는 데이터 저장
- /var/lib: 프로그램 상태 정보(실행 중 수정되는 영구 데이터)
- /var/lock: 파일 잠금 정보
- /var/log: 시스템 및 서비스 로그
- /var/tmp: 재부팅 사이에도 유지되는 임시 파일
- /var/spool: 처리 대기 중인 작업 데이터
- /var/run: 부팅 이후 시스템 상태 정보 (최근 시스템에서는
/run으로 이동됨)
실무 관점 핵심 요약
- 읽기 전용 vs 가변 데이터
- 읽기 전용:
/bin,/sbin,/lib,/usr - 변경 빈번:
/var,/run,/tmp
- 읽기 전용:
- 장애 분석 시 자주 보는 곳
- 로그 →
/var/log - 프로세스 →
/proc - 디바이스 →
/dev,/sys - 설정 →
/etc
- 로그 →
한 줄 정리
FHS는 “리눅스 파일과 디렉토리의 역할 설명서”이다. 디렉토리 이름만 봐도 무엇이 들어 있는지 예측 가능하게 만드는 표준.